package wuziqi;

import java.io.Serializable;

/**
 * 五子棋游戏的排行榜实体类
 * 用于记录游戏的局数、步数和结果信息
 * 实现了Serializable接口以便于对象的序列化和反序列化
 */
public class paihangbang implements Serializable {
    // 序列化版本号，确保序列化和反序列化的兼容性
    private static final long serialVersionUID = 1L;

    // 游戏局数
    private int jushu;
    // 游戏步数
    private int bushu;
    // 游戏结果（如"胜利"、"失败"、"平局"）
    private String jieguo;

    /**
     * 默认构造函数
     */
    public paihangbang() {}

    /**
     * 带参数的构造函数
     * @param jushu 游戏局数
     * @param bushu 游戏步数
     * @param jieguo 游戏结果
     */
    public paihangbang(int jushu, int bushu, String jieguo) {
        this.jushu = jushu;
        this.bushu = bushu;
        this.jieguo = jieguo;
    }

    // Getter和Setter方法

    /**
     * 获取游戏局数
     * @return 游戏局数
     */
    public int getJushu() { return jushu; }

    /**
     * 设置游戏局数，确保局数不小于1
     * @param jushu 游戏局数
     */
    public void setJushu(int jushu) {
        // 游戏局数至少为1，如果传入值小于1则设为1
        if(jushu < 1) this.jushu = 1;
        else this.jushu = jushu;
    }

    /**
     * 获取游戏步数
     * @return 游戏步数
     */
    public int getBushu() { return bushu; }

    /**
     * 设置游戏步数
     * @param bushu 游戏步数
     */
    public void setBushu(int bushu) { this.bushu = bushu; }

    /**
     * 获取游戏结果
     * @return 游戏结果
     */
    public String getJieguo() { return jieguo; }

    /**
     * 设置游戏结果
     * @param jieguo 游戏结果
     */
    public void setJieguo(String jieguo) { this.jieguo = jieguo; }
}